package gov.pbc.nn.kjgl.entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

import com.bstek.dorado.annotation.PropertyDef;

import gov.pbc.nn.core.entity.BaseEntity;

/**
 * 工作计划的实体类
 */
//@Entity
//@Table(name = "T_WORKPLAN")
public class WorkPlan extends BaseEntity {

	private static final long serialVersionUID = 1L;

	@Column(name = "WORK_NAME_", length = 200)
	@PropertyDef(label = "工作任务", description = "工作任务:工作任务的名称")
	private String workName;

	@Column(name = "SPECIFIC_REQUIREMENT_", length = 1000)
	@PropertyDef(label = "具体要求", description = "具体要求:具体要求")
	private String specificRequirement;

	@Column(name = "PLAY_DECOMPOSE_", length = 1000)
	@PropertyDef(label = "任务分解", description = "任务分解:任务分解")
	private String playDecompose;

	@Column(name = "WORK_COMPLETION_STATE_", length = 1000)
	@PropertyDef(label = "工作完成情况", description = "进度:进度")
	private String workCompletionState;

	// 有工作计划进行中，还有工作计划完成
	@Column(name = "WORK_STATE_", length = 100)
	@PropertyDef(label = "工作状态", description = "工作状态:工作状态")
	private String workState;

	@Column(name = "START_DATE_")
	@PropertyDef(label = "计划开始时间", description = "计划开始时间:计划开始时间")
	private Date startDate;

	@Column(name = "END_DATE_")
	@PropertyDef(label = "计划结束时间", description = "计划结束时间:计划结束时间")
	private Date endDate;

	@Column(name = "PLAY_COMPLETION_TIME_")
	@PropertyDef(label = "实际完成时间", description = "实际完成时间:实际完成时间")
	private Date playCompletionTime;

	// 0是初始化状态
	// 10：科长审核
	// 20：处长审核
	// 30：计划执行中
	// 40：是科长驳回
	// 50:是处领导驳回
	// 60 是计划完成！不管是否完成
	/**
	 * 0：初始 10：科长审核 20：处长审核 30：计划执行中40
	 */
	@Column(name = "STATE_")
	@PropertyDef(label = "状态", description = "状态:状态")
	private String state;

	/**
	 * 区分南宁中支和地市种植10是南宁重视，20是地市中止
	 */
	@Column(name = "TYPE_", length = 20)
	@PropertyDef(label = "工作计划类别", description = "工作计划类别:工作计划类别")
	private String type;

	
	@Column(name = "KEZHANG_", length = 20)
	@PropertyDef(label = "审核科长", description = "审核科长:审核科长")
	private String kezhang;
	
	@Column(name = "KEZHANG_ID_")
	@PropertyDef(label = "审核科长id", description = "审核科长id:审核科长id")
	private String kezhangId;
	
	@Column(name = "FUZEREN_", length = 20)
	@PropertyDef(label = "计划负责人", description = "计划负责人:计划负责人")
	private String fuzeren;
	
	@Column(name = "FUZEREN_ID_")
	@PropertyDef(label = "计划负责人Id", description = "计划负责人Id:计划负责人Id")
	private String fuzerenId;
	
	@Column(name = "CHUZHANG_ID_")
	@PropertyDef(label = "处长Id", description = "处长Id:处长Id")
	private String chuzhangId;
	
	
	
	
	public String getChuzhangId() {
		return chuzhangId;
	}

	public void setChuzhangId(String chuzhangId) {
		this.chuzhangId = chuzhangId;
	}

	public String getKezhangId() {
		return kezhangId;
	}

	public void setKezhangId(String kezhangId) {
		this.kezhangId = kezhangId;
	}

	public String getFuzerenId() {
		return fuzerenId;
	}

	public void setFuzerenId(String fuzerenId) {
		this.fuzerenId = fuzerenId;
	}

	public String getFuzeren() {
		return fuzeren;
	}

	public void setFuzeren(String fuzeren) {
		this.fuzeren = fuzeren;
	}

	public String getKezhang() {
		return kezhang;
	}

	public void setKezhang(String kezhang) {
		this.kezhang = kezhang;
	}

	public String getState() {
		return state;
	}

	public void setState(String state) {
		this.state = state;
	}

	public String getWorkName() {
		return workName;
	}

	public void setWorkName(String workName) {
		this.workName = workName;
	}

	public String getSpecificRequirement() {
		return specificRequirement;
	}

	public void setSpecificRequirement(String specificRequirement) {
		this.specificRequirement = specificRequirement;
	}

	public String getPlayDecompose() {
		return playDecompose;
	}

	public void setPlayDecompose(String playDecompose) {
		this.playDecompose = playDecompose;
	}

	public String getWorkCompletionState() {
		return workCompletionState;
	}

	public void setWorkCompletionState(String workCompletionState) {
		this.workCompletionState = workCompletionState;
	}

	public String getWorkState() {
		return workState;
	}

	public void setWorkState(String workState) {
		this.workState = workState;
	}

	public Date getStartDate() {
		return startDate;
	}

	public void setStartDate(Date startDate) {
		this.startDate = startDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public Date getPlayCompletionTime() {
		return playCompletionTime;
	}

	public void setPlayCompletionTime(Date playCompletionTime) {
		this.playCompletionTime = playCompletionTime;
	}
	
}
